// 》》》》》》》》》》》》 es5常用方法
// 数据循环
// let arr=[1,2,3]
let arr=[1,2,3,2,3,4]

// for循环
// for(let i=0;i<arr.length;i++){
//   if(arr[i]==2){
//     break   //阻止往下进行  输出 1
//   }

//   if(arr[i]==2){
//     continue  //结束上一次循环，开始下一次循环  输出 1,3
//   }
//   console.log(arr[i])
// }

// foreach  不支持 break 和continue
// arr.forEach(function(ele,index,array){
//   console.log(ele,index)
// })

// map循环  map的返回值会组成一个新的数组，并且不会改变原有数组的值
// arr.map(function(value){  //基本用法
//   console.log(value);
// })

// // 返回一个新的数组
// let result=arr.map(function(value){
//   value+=1
//   return value
// })

// console.log(arr,result);   //输出：[1, 2, 3]   [2, 3, 4]

// filter  过滤 找到符合条件的数据，形成一个新的数组
// let result=arr.filter(function(value){
//   return value==2
// })

// console.log(arr,result);   //输出：[1, 2, 3]  [2]

// some  过滤符合条件的值，返回一个布尔值
// let result =arr.some(function(value){
//   return value==2
// })

// console.log(arr,result);   //输出：[1, 2, 3]  true

// every 检测当前元素是否否符合条件，返回一个布尔值
// let result =arr.every(function(value){
//   return value==2
// })

// console.log(arr,result);   //输出：[1, 2, 3] false

// reduce  接受一个函数作为累加器

// ************一般有2个参数：************
//第一个为方法：function(){} ,  第二个为一个初始值

// ************一般会有4个条件：************
//  pre： 上一次调用回调的返回值，cur：当前元素，index：当前元素的下标，array：原数组

// eg1：累加求和
// let sum=arr.reduce(function(pre,cur,index,array){
//     return pre + cur
// },0)

// console.log(sum);   //输出：6

// eg1：求最大值
// let max = arr.reduce(function(pre,cur){
//    return Math.max(pre,cur)
// })
// console.log(max);   //输出：3

// eg3：去重
// let result = arr.reduce(function(pre,cur){
//   pre.indexOf(cur)==-1 && pre.push(cur)
//   return pre
// },[])
//  console.log(result);   //输出：[1, 2, 3, 4]

// //  indexOf 的用法
// let str ="3.14"
// console.log(str.indexOf('.'));


// 》》》》》》》》》》》》 es6常用方法

// find 查找出符合条件的值,默认返回第一个符合条件的值
// let res= arr.find(function(value){
//   return value==2
// })
// console.log(arr, res);  //输出：[1, 2, 3, 2, 3, 4] 2


// findeIndex  返回符合条件值得下标，默认返回第一个符合条件的下标
// let res =arr.findIndex(function(value){
//   return value==4
// })

// console.log(arr, res);  //输出：[1, 2, 3, 2, 3, 4] 5

// for of 
// for (const item of arr) {  //遍历返回对应的值
//   console.log(item);
// }

// for (const item of arr.keys()) {   //遍历返回对应的key
//   console.log(item); 
// }

// for (const [index,item] of arr.entries()) {  //遍历返回对应的key,value
//   console.log(index,item); 
// }